package com.medic.entity.group.pain;

/**
 * 任务总类
 * 
 * @author Mr.zhang
 *
 */
public class Task {
	private long tsId;
	/**
	 * 用户id
	 */
	private int sikerId;
	/**
	 * 用户名字，不需要存入数据库，医生查看展示用
	 */
	private String sikerName;
	/**
	 * 组id
	 */
	private int groupId;
	/**
	 * 组名（不需要存入数据库）
	 */
	private String groupName;
	/**
	 * 对于已经完成的任务，批阅状态采用status+code 的方式，助手code为3，药师code为4，医生code为5。
	 * 比如当前status是2，也就是已经完成但没有人批阅，助手阅后，status=2+3=5
	 * 即表示助手阅，在这基础上，医生阅了，则status=5+5=10即助手、医生已阅。 任务状态（1未完成 2已完成 5助手阅 6药师阅 7医生阅
	 * 9助手、药师阅 10助手、医生阅 11药师、医生阅 14助手、药师、医生阅 ---默认是1） tip:在查询的时候查询未完成未过期的，传0
	 */
	private int status;
	/**
	 * 需要完成的时间毫秒数（判断是否过期，如果上面status的值为1，crDate小于当前时间则过期，否者没有）。
	 * 如果是滴定任务，要跟随着疼痛评分而更新时间 当整个任务完成时，crDate更新为任务完成时间
	 */
	private long crDate;
	/**
	 * 上面时间的yyyy-MM-dd hh-mm形式（不需要存入数据库）
	 */
	private String strDate;
	/**
	 * 任务类型，区分任务的（1、疼痛反馈 2、不良反应 3、依从性 4、健康评估 5、滴定 6、服药提醒）
	 */
	private int tsType;
	/**
	 * 任务具体内容
	 */
	private Object task;

	public long getTsId() {
		return tsId;
	}

	public void setTsId(long tsId) {
		this.tsId = tsId;
	}

	public int getSikerId() {
		return sikerId;
	}

	public void setSikerId(int sikerId) {
		this.sikerId = sikerId;
	}

	public String getSikerName() {
		return sikerName;
	}

	public void setSikerName(String sikerName) {
		this.sikerName = sikerName;
	}

	public int getGroupId() {
		return groupId;
	}

	public void setGroupId(int groupId) {
		this.groupId = groupId;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public long getCrDate() {
		return crDate;
	}

	public void setCrDate(long crDate) {
		this.crDate = crDate;
	}

	public int getTsType() {
		return tsType;
	}

	public void setTsType(int tsType) {
		this.tsType = tsType;
	}

	public Object getTask() {
		return task;
	}

	public void setTask(Object task) {
		this.task = task;
	}

	public String getGroupName() {
		return groupName;
	}

	public void setGroupName(String groupName) {
		this.groupName = groupName;
	}

	public String getStrDate() {
		return strDate;
	}

	public void setStrDate(String strDate) {
		this.strDate = strDate;
	}

	@Override
	public String toString() {
		return "Task [tsId=" + tsId + ", sikerId=" + sikerId + ", sikerName=" + sikerName + ", groupId=" + groupId
				+ ", groupName=" + groupName + ", status=" + status + ", crDate=" + crDate + ", strDate=" + strDate
				+ ", tsType=" + tsType + ", task=" + task + "]";
	}
	
	

}
